---
title: Remote Config
sidebar_label: Overview
---

##  What does it do?

Firebase Remote Config is a cloud service that lets you change the behavior and appearance of your app without requiring users to
download an app update. When using Remote Config, you create in-app default values that control the behavior and appearance of your
app. Then, you can later use the Firebase console or the Remote Config backend APIs to override in-app default values for all app
users or for segments of your user base. Your app controls when updates are applied, and it can frequently check for updates and
apply them with a negligible impact on performance.

<YouTube id="_CXXVFPO6f0"/>

## Installation

<Tabs
groupId="legacy-or-nullsafe"
defaultValue="legacy"
values={[
    { label: "Legacy", value: "legacy" },
    { label: "Null safety", value: "null-safe" },
]}
>
<TabItem value="legacy">
</TabItem>
<TabItem value="null-safe">

:::caution
This package version is not null safe migrated yet, but has been implemented to be compatible with other null safe FlutterFire packages.
:::

Ensure you're using the Flutter `stable` channel:

```bash
$ flutter channel stable
```

If your app is mixing legacy and null-safe packages, use the `--no-sound-null-safety` flag:
```bash
$ flutter run --no-sound-null-safety
```

For legacy package imports, place the following ignore comment to hide Dart analyzer warnings:

```dart
// ignore: import_of_legacy_library_into_null_safe
import 'package:firebase_remote_config/firebase_remote_config.dart';
```
</TabItem>
</Tabs>

### 1. Add dependency

<Tabs
  groupId="legacy-or-nullsafe"
  defaultValue="legacy"
  values={[
    { label: "Legacy", value: "legacy" },
    { label: "Null safety", value: "null-safe" },
  ]}
>
<TabItem value="legacy">

```yaml {5} title="pubspec.yaml"
dependencies:
  flutter:
    sdk: flutter
  firebase_core: "^{{ plugins.firebase_core }}"
  firebase_remote_config: "^{{ plugins.firebase_remote_config }}"
```

</TabItem>
<TabItem value="null-safe">

```yaml {5} title="pubspec.yaml"
dependencies:
  flutter:
    sdk: flutter
  firebase_core: "^{{ plugins.firebase_core_ns }}"
  firebase_remote_config: "^{{ plugins.firebase_remote_config_ns }}"
```

</TabItem>
</Tabs> 



### 2. Download dependency

```
$ flutter pub get
```

### 3. (Web Only) Add the SDK

> Web is currently not supported. See the [FlutterFire roadmap](https://github.com/FirebaseExtended/flutterfire/issues/2582).

### 4. Rebuild your app

Once complete, rebuild your Flutter application:

```bash
$ flutter run
```

## Next Steps

Once installed, you're ready to start using Remote Config in your Flutter Project.

View the [Usage documentation](usage.mdx) to get started.
